Numerical controller

ABSTRACT

A numerical controller performs control to rotate a turret, which holds a plurality of tools on the outer peripheral portion thereof, thereby moving one (selected tool) of the tools selected by a command to a predetermined position (selected position). The numerical controller sets and holds a partial area of the outer peripheral portion of the turret as an area (passage-prohibited area) prohibited from passing through the selected position and determines whether or not the selected tool is present in the passage-prohibited area or whether or not the passage-prohibited area passes through the selected position as the selected tool is moved to the selected position.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a new U.S. Patent Application that claims benefit ofJapanese Patent Application No. 2016-242189, filed Dec. 14, 2016, thedisclosure of this application is being incorporated herein by referencein its entirety for all purposes.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to a numerical controller, and moreparticularly, to a numerical controller capable of avoiding interferencewith rotation of a tool changer turret.

Description of the Related Art

Some cutting machines are provided with a turret for holding a pluralityof tools. When a numerical controller performs a tool change command,the turret rotates to change a tool for machining a workpiece.

FIG. 1 shows an example of the turret. In this example, eight types oftools, No. 1 to No. 8, can be mounted on a turret 10. In the state ofFIG. 1, a workpiece 11 can be machined by using No. 1 tool t1 mounted onthe turret 10. The tool in this state will hereinafter be referred to as“selected tool”. Moreover, the position of the selected tool in thisstate will hereinafter be referred to as “selected position”.

FIGS. 2 to 4 are views showing typical turret motions.

The turret 10 rotates in response to an absolute command, an incrementalcommand, and a command based on a manual operation.

FIG. 2 shows an operation for selecting a tool of a specified number bytaking a shortcut (absolute-command operation). For example, if No. 6tool t6 is specified as a new selected tool with No. 1 tool t1 selectedearlier, the numerical controller rotates the turret 10 in a shortcutdirection, that is, in a forward or reverse direction whichever may bethe rotation direction in which the specified tool can be reachedearlier, thereby selecting No. 6 tool t6 as the selected tool.

FIG. 3 shows an operation for selecting a tool of a specified number byrotating the turret for a specified number of numbers in onepredetermined direction (clockwise in the example of FIG. 3), forward orreverse (incremental-command operation).

FIG. 4 shows the operation of the turret 10 performed when a tool changebutton (not shown) of a cutting machine or the like is manuallyoperated. In response to the button operation, the numerical controllerrotates the turret 10 number by number in one predetermined direction,forward or reverse, thereby specifying, as the new selected tool, thetool (t2) of the number adjacent to the currently selected tool (t1).

In an absolute-command operation, the rotation direction of the turret10 is restricted to one direction (shortcut direction) corresponding tothe newly selected tool. In this case, a problem arises that a long tool(t2) cannot avoid interfering with a machine or some other structure 12(hereinafter referred to as “machine”) in the process of rotation of theturret 10 for tool change, as shown in FIG. 5. Moreover, there is aproblem that a cable 13 of the cable-connected tool t1 such as an airspindle inevitably gets entangled, as shown in FIG. 6, if a plurality ofrevolutions in the same direction are made.

In an incremental-command operation or manual operation, in contrast,the above problems can be avoided by specifying the rotation directionfor each command or operation. In order to perform this command,however, it is necessary to specify an optimal rotation method for eachtool selection while previously ascertaining the tool position, thusentailing complicated operations.

To overcome this problem, Japanese Patent Application Laid-Open No.2011-237880 discloses how to avoid interference between the machine 12and the tools by retracting the turret 10 itself, as shown in FIG. 7.Moreover, Japanese Patent Application Laid-Open No. 7-251352 discloses amethod in which an interference region 15 where the workpiece 11 caninterfere with the machine 12 is previously set by using positioninformation (coordinate values) in rotating a rotary table 14 that holdsthe workpiece 11 to be machined, as shown in FIG. 8. In determining therotation direction, according to this method, the rotation direction isselected such that a target position can be reached quickly without thepassage of the interference region. In FIG. 8, numeral 16 denotes afixed table.

The technique described in Japanese Patent Application Laid-Open No.2011-237880 (FIG. 7) has a problem, however, that it cannot be adoptedwithout the use of a machine structure that can move the turret itself.Moreover, the technique described in Japanese Patent ApplicationLaid-Open No. 7-251352 (FIG. 8) may also be applied to the turret. Inthis case, however, it is necessary for a rotation axis of the turret tomanage the position information (coordinate values). If the turret isrotated by a motor such as a spindle motor that does not manage theposition information (coordinate values), however, the rotation iscontrolled only based on the necessary number of pulses for rotation foreach tool number that is held in advance and the control based on theposition information is not easy. Furthermore, the technique of JapanesePatent Application Laid-Open No. 7-251352 does not disclose any controlto be performed when a tool in the interference region is selected.

SUMMARY OF THE INVENTION

The present invention has been made to solve these problems and itsobject is to provide a numerical controller capable of avoidinginterference with rotation of a tool changer turret.

A numerical controller according to the present invention rotates aturret, which holds a plurality of tools on the outer peripheral portionthereof, thereby moving a selected one of the tools selected by acommand to a predetermined selected position. This numerical controllercomprises a passage-prohibited area holding unit configured to hold apartial area of the outer peripheral portion of the turret as apassage-prohibited area prohibited from passing through the selectedposition and a passage-prohibited area check unit configured todetermine whether or not the selected tool is present in thepassage-prohibited area and/or whether or not the passage-prohibitedarea passes through the selected position as the selected tool is movedto the selected position.

The numerical controller can further comprise an alarm generating unitconfigured to generate an alarm if the selected tool is present in thepassage-prohibited area.

The passage-prohibited area check unit may be configured to newly selectthe tool outside the passage-prohibited area if the selected tool ispresent in the passage-prohibited area, and the numerical controller mayfurther comprise a turret rotation control unit configured to move thenewly selected tool to the selected position.

The passage-prohibited area check unit may be configured to generate anew command for rotating the turret reversely relative to the directionresponsive to the command for selection if the passage-prohibited areapasses through the selected position as the selected tool is moved tothe selected position, and the numerical controller may further comprisea turret rotation control unit configured to move the selected tool tothe selected position in response to the new command.

The selected tool may be specified by a tool number or the number oftools to be moved.

The passage-prohibited area may be identified by a tool number.

According to the present invention, there can be provided a numericalcontroller capable of avoiding entanglement of a cable of acable-connected tool due to interference with rotation of a tool changerturret, or the like.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a view showing an example of a conventional turret;

FIG. 2 is a view showing a typical turret motion;

FIG. 3 is a view showing a typical turret motion;

FIG. 4 is a view showing a typical turret motion;

FIG. 5 is a view showing a problem of the conventional turret;

FIG. 6 is a view showing a problem of the conventional turret;

FIG. 7 is a view showing a prior art example;

FIG. 8 is a view showing a prior art example;

FIG. 9 is a block diagram showing the configuration of a numericalcontroller;

FIG. 10 is a view showing an example of a method for identifying apassage-prohibited area;

FIG. 11 is a view showing an example of the operation of apassage-prohibited area check unit;

FIG. 12 is a view showing an example of the operation of thepassage-prohibited area check unit;

FIG. 13 is a view showing an example of the operation of thepassage-prohibited area check unit;

FIG. 14 is a view showing an example of the operation of thepassage-prohibited area check unit;

FIGS. 15A to 15E are flowcharts showing the operation of the numericalcontroller; and

FIG. 16 is a view showing an example of a method for identifying thepassage-prohibited area.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 9 is a block diagram showing the configuration of a numericalcontroller 100 according to an embodiment of the present invention.

The numerical controller 100 is characterized by comprising apassage-prohibited area holding unit 110, passage-prohibited area checkunit 120, alarm generating unit 130, and turret rotation control unit140. Other configurations are the same as those of a conventionalnumerical controller for turret control.

The numerical controller 100 is an information processor that typicallycomprises a central processing unit (CPU), storage device, andinput/output device. The passage-prohibited area holding unit 110,passage-prohibited area check unit 120, alarm generating unit 130, andturret rotation control unit 140 are implemented as the CPU executes apredetermined program.

The passage-prohibited area holding unit 110 previously holds an area(hereinafter referred to as “passage-prohibited area”) of a turret thatprohibits the passage of a selected position. FIG. 10 shows an exampleof a method for identifying the passage-prohibited area.

In the example of FIG. 10, the passage-prohibited area is specified byspecifying a passage-prohibited area starting tool number (hereinafterreferred to as “ST”) and a passage-prohibited area ending tool number(hereinafter referred to as “ED”). For example, if “ST=5” and “ED=7” arespecified, the passage-prohibited area is an area shown in FIG. 10, thatis, a region between No. 5 tool t5 and No. 7 tool t7. By thisspecification, the area (passage-prohibited area) between No. 5 and No.7 tools t5 and t7 is disabled from passing through the selectedposition. The tools t5 and t7 themselves are not contained in thepassage-prohibited area. That is, the tools t5 and t7 can stop at theselected position.

For example, the passage-prohibited area holding unit 110 comprises aninput unit (not shown) and can accept the input of set values of ST andED through key input or the like from the input unit. Alternatively, thepassage-prohibited area holding unit 110 may have a passage-prohibitedarea setting mode, in which a user is urged to rotate a turret 10 sothat the respective numbers of the tools stopped at the selectedposition are set as ST and ED, for example. More specifically, as shownin FIG. 16, the numbers ST and ED of the tools that define thepassage-prohibited area can be determined by forwardly or reverselyrotating the turret 10 to a position reached immediately before any ofthe tools interferes with a machine 12.

The passage-prohibited area check unit 120 determines whether or not atool number specified in response to a tool change command is present inthe passage-prohibited area and whether or not the turret 10 passesthrough the passage-prohibited area as it rotates to select thespecified tool. If the specified tool number (t6) is present in thepassage-prohibited area, as shown in FIG. 11, the passage-prohibitedarea check unit 120 causes the alarm generating unit 130 to generate analarm.

Moreover, when the turret 10 is rotated by an absolute-commandoperation, incremental-command operation, or manual operation, thepassage-prohibited area check unit 120 selects the specified tool (t7)by rotating the turret 10 reversely relative to the normal rotation, asshown in FIG. 12, if the passage-prohibited area inevitably passes overthe selected position.

Alternatively, as shown in FIG. 14, the passage-prohibited area checkunit 120 may be configured to automatically select a tool number outsidethe passage-prohibited area instead of generating the alarm if the toolnumber is specified by the incremental-command or manual operation andif the specified tool (t6) is present in the passage-prohibited area.Also in this case, if the passage-prohibited area inevitably passes overthe selected position when the turret 10 is rotated in the normalrotation direction, the target tool (t7) is selected by rotating theturret 10 reversely relative to the normal rotation.

The alarm generating unit 130 generates an alarm in response to arequest from the passage-prohibited area check unit 120. The alarm canbe generated by such a means as generation of a warning sound, lightingof a warning lamp, and display of a warning message.

The turret rotation control unit 140 performs control to rotate theturret 10 in accordance with the direction and amount of rotationrequired by the passage-prohibited area check unit 120. Typically, therotation amount is specified by the number of numbers. Specifically, theturret rotation control unit 140 receives commands for forward rotationfor two numbers and reverse rotation for three numbers, for example.Since the turret rotation control unit 140 previously holds thenecessary pulse number for rotation for one number, the turret can berotated according to the commands by generating a number of pulsesobtained by multiplying the number of numbers commanded by thepassage-prohibited area check unit 120 by the above-described pulsenumber.

The operation of the numerical controller 100 will be described furtherin detail with reference to the flowcharts of FIGS. 15A to 15E. Thefollowing is a sequential description of steps of processing.

Step S1: The numerical controller 100 receives a tool change command.

Step S2: The passage-prohibited area check unit 120 receives a commandvalue T of the tool change command.

If the tool number is specified by an absolute command, it is deliveredas the command value T to the passage-prohibited area check unit 120.For example, the command value T of a tool change command “M6T5” thatspecifies No. 5 tool is “5”.

If the number of numbers is specified by an incremental command, incontrast, it is delivered as the command value T to thepassage-prohibited area check unit 120. For example, the command value Tof a tool change command “M6P5” is “5”. In the case of the manualoperation, “1” is delivered as the command value T to thepassage-prohibited area check unit 120. The passage-prohibited areacheck unit 120 holds the command value T as CMD.

Step S3: The passage-prohibited area check unit 120 acquires thepassage-prohibited area starting number ST and the passage-prohibitedarea ending number ED from the passage-prohibited area holding unit 110.Moreover, the passage-prohibited area check unit 120 acquires acurrently selected tool number PR_T, total number of tools MX_T that theturret can hold, and necessary number of pulses PLS for the rotation ofthe turret to the directly adjacent tool number. PR_T, MX_T and PLS areassumed to be previously stored in a predetermined internal or externalstorage area of the passage-prohibited area check unit 120.

Step S4: The passage-prohibited area check unit 120 analyzes the toolchange command. If the tool change command is the absolute command, theprocessing proceeds to Step S5. If the tool change command is theincremental command or the manual operation, the processing proceeds toStep S6.

Step S5: The passage-prohibited area check unit 120 sets the specifiedtool number CMD as a tool number NX_T to be selected next.

Step S6: The passage-prohibited area check unit 120 obtains the toolnumber NX_T to be selected next by adding the command value CMD to thecurrent tool number PR_T.

Step S7: The passage-prohibited area check unit 120 normalizes NX_T soas to obtain “1≤NX_T≤MX_T”.

Step S8: The passage-prohibited area check unit 120 normalizes ST and EDso as to obtain “ST<ED”.

Step S9: The passage-prohibited area check unit 120 checks to see if thecurrently selected tool number is outside the prohibited area. If thecurrent tool number is in the prohibited area, the alarm generating unit130 is caused to generate an alarm, whereupon the processing ends.

Step S10: The passage-prohibited area check unit 120 calculates atemporary number of moving tools ΔTtmp. In the case of the incrementalcommand, the passage-prohibited area check unit 120 sets ΔTtmp for thecommand number CMD. In the case of the absolute command, ΔTtmp is setfor the number of moving tools in a shortcut direction from the currentselected tool to the next selected tool.

Step S11: The passage-prohibited area check unit 120 changes thepassage-prohibited area to a range adapted to the rotation direction ofthe turret.

Step S12: The passage-prohibited area check unit 120 determines whetheror not the next selected tool NX_T is present in the passage-prohibitedarea. If the tool NX_T is in the passage-prohibited area and in the caseof the absolute command, the alarm generating unit 130 is caused togenerate an alarm, whereupon this processing end. If the tool NX_T is inthe passage-prohibited area and in the case of the incremental-commandor manual operation, in contrast, the processing proceeds to Step S16.

Step S13: The passage-prohibited area check unit 120 determines whetheror not the next selected tool NX_T passes through the passage-prohibitedarea when it is caused to rotate the turret 10. If thepassage-prohibited area is not passed, the number of moving tools ΔT iskept at ΔTtmp. If the passage-prohibited area is passed, the number ofmoving tools required to pass to reach the next selected tool NX_T byreverse rotation is calculated as ΔT.

Step S14: The passage-prohibited area check unit 120 updates the currenttool number to PR_T+ΔT.

Step S15: The passage-prohibited area check unit 120 outputs ΔT×PLS asmovement pulses OUTPUT for rotating the turret to the turret rotationcontrol unit 140. Alternatively, the passage-prohibited area check unit120 may output ΔT to the turret rotation control unit 140 so that OUTPUTcan be calculated using PLS that is previously held by the turretrotation control unit 140. The turret rotation control unit 140 rotatesthe turret in response to OUTPUT.

Step S16: The passage-prohibited area check unit 120 performs processingfor automatically changing the next selected tool number to a toolnumber outside the passage-prohibited area when the incremental commandis given. In the present embodiment, if the changed tool number is alsopresent in the passage-prohibited area, the alarm generating unit 130 iscaused to generate an alarm, whereupon the processing ends (Step S16_1).Moreover, if the changed tool number is also present in thepassage-prohibited area, the processing related to Step S16 may bere-executed so that the changed selected tool number gets out of thepassage-prohibited area. In this case, a maximum recalculation frequencymay be provided such that the re-execution frequency of the processingrelated to Step S16 is limited to the maximum recalculation frequency.

The following is a description of some examples of the operation of thenumerical controller 100 according to the present embodiment.

Example 1

FIG. 11 shows an operation of the numerical controller 100 for the casein which the tool (t6) in the passage-prohibited area (“ST=5” and“ED=7”) is specified as the next selected tool for the absolute-command,incremental-command, or manual operation. In this case, thepassage-prohibited area check unit 120 causes the alarm generating unit130 to generate an alarm.

Example 2

FIG. 12 shows an operation of the numerical controller 100 for the casein which the passage-prohibited area (“ST=5” and “ED=7”) is inevitablypassed if the next selected tool (t7) specified by the absolute commandis selected by taking a shortcut. The same operation is performed if “3”is specified as the number of moving tools in the forward direction inresponse to the incremental command. In this case, thepassage-prohibited area check unit 120 rotates the turret 10 reversely(counterclockwise in case of FIG. 12) relative to the normal rotation soas not to pass through the passage-prohibited position, thereby movingthe next selected tool to the selected position.

Example 3

FIG. 13 shows a setting example for preventing entanglement of a cableof a cable-connected tool.

An arbitrary narrow area (“ST=2” and “ED=3” in this example) is set asthe passage-prohibited area in order to prevent the turret 10 frommaking more than one revolution. Preferably, the passage-prohibited areacan be set in a position diagonal to a cable-connected tool t1. Thus,the passage-prohibited area check unit 120 suitably converts the commandto reverse rotation even in case the turret makes a plurality ofrevolutions in the same direction in response to a plurality ofconsecutive commands (M6T2, . . . , M6T1, etc.), for example, so thatthe turret never makes more than one revolution.

According to the present embodiment, if the next selected tool is in thepassage-prohibited area or if a route leading to the next selected toolpasses through the passage-prohibited area, the passage-prohibited areacheck unit 120 performs control to generate an alarm, reverse the turretrotation direction, or automatically select a tool outside thepassage-prohibited area. Thus, even in case there is neither a turretmoving mechanism nor a management mechanism for position information(coordinate values) on the turret rotation axis, the tool change commandcan easily be incorporated into a machining program and the tool can bemanually changed without being aware of the direction of the turretrotation at the time of tool change.

The present invention is not limited to the above-described embodimentand may be suitably changed without departing from the spirit of theinvention. Any of the constituent elements of the embodiment may bemodified or omitted without departing from the scope of the invention.While the turret according to the above-described embodiment is providedwith the passage-prohibited area that is not allowed to pass over theselected position, for example, the same function can also be achievedby setting a passage-prohibited area that is allowed to pass over theselected position. In this case, the passage-prohibited area is set soas to contain the numbers of tools that interfere with the machine orthe like, for example.

The invention claimed is:
 1. A numerical controller configured torotate, during a tool selection, a turret, which holds a plurality oftools on an outer peripheral portion thereof, thereby moving a selectedone of the plurality of tools selected by a command to a selectedposition, the numerical controller comprising: a processor configuredto: hold a partial area of the outer peripheral portion of the turret asa passage-prohibited area, the turret is prohibited from rotating in arotational direction that results in the passage-prohibited area passingthrough the selected position; prior to rotating the turret in therotational direction to move the selected one of the plurality of toolsto the selected position, determine whether or not the selected one ofthe plurality of tools is present in the passage-prohibited area andwhether or not the passage-prohibited area passes through the selectedposition as the turret is rotated in the rotational direction to movethe selected one of the plurality of tools to the selected positionduring the tool selection; rotate the turret in the rotational directionto move the selected one of the plurality of tools to the selectedposition when it is determined that the selected one of the plurality oftools is not present in the passage-prohibited area and thepassage-prohibited area does not pass through the selected position asthe turret is rotated in the rotational direction to move the selectedone of the plurality of tools to the selected position; prohibit theturret from rotating in the rotational direction when it is determinedthat the selected one of the plurality of tools is present in thepassage-prohibited area or when it is determined that thepassage-prohibited area will pass through the selected position as theturret is rotated in the rotational direction; and in response toprohibiting the turret from rotating in the rotational direction, rotatethe turret in a rotational direction opposite the rotational directionto move the selected one of the plurality of tools to the selectedposition.
 2. The numerical controller according to claim 1, wherein theselected one of the plurality of tools is specified by a tool number. 3.The numerical controller according to claim 1, wherein the selected oneof the plurality of tools is specified by a number of tools to be moved.4. The numerical controller according to claim 1, wherein thepassage-prohibited area is identified by a tool number.